package com.hubu.parking.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hubu.parking.entity.sys.SysConfig;
import com.hubu.parking.model.dto.park.ComputeCostDto;
import com.hubu.parking.model.dto.park.PageListConfigRequest;

import java.math.BigDecimal;

/**
* @author 19468
* @description 针对表【sys_config(系统全局配置表)】的数据库操作Service
* @createDate 2025-03-02 16:52:08
*/
public interface SysConfigService extends IService<SysConfig> {

    /**
     * 根据分页查询条件，查询符合的配置
     *
     * @param pageRequest 分页查询条件
     * @return 分页车位
     */
    Page<SysConfig> pageListConfigRecord(PageListConfigRequest pageRequest);


    /**
     * 计算费用
     * @param dto 开始时间 结束时间
     * @return 费用
     */
    BigDecimal computeCost(ComputeCostDto dto);

    /**
     * 根据名称获取用户配置
     * @param name 配置名称
     * @return 配置实体类
     */
    SysConfig getByName(String name);
}
